<?php

namespace App\Http\Requests\Game\Other\Activity\Sign;

use App\Http\Requests\Request;

class UpdateRequest extends Request
{

    /**
     * 应用于请求的验证规则。
     *
     * @return array
     */
    public function rules()
    {
        return [
            'enable' => 'required|integer|in:0,1',
            'expire_time' => 'nullable|integer|min:0',

            'info.maxDay' => 'required|integer|between:1,60',
            'info.rewards.*.items.*.*' => 'required|integer',
            'info.rewards.*.items' => [
                function ($attribute, $items, $fail) {
                    if (count($items) != count(array_unique(array_column($items, 0)))) {
                        $fail(trans('validation.unique_value'));
                    }
                }
            ],
        ];
    }

    /**
     * 自定义验证规则的错误消息。
     *
     * @return array
     */
    public function messages()
    {
        return [];
    }

    /**
     * 自定义字段名称。
     *
     * @return array
     */
    public function attributes()
    {
        return [];
    }
}
